package cn.tedu.store.service;

import java.util.ArrayList;
import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import cn.tedu.store.bean.Cart;
import cn.tedu.store.bean.CartVo;
import cn.tedu.store.mapper.CartMapper;
@Service
public class CartService implements ICartService{
	
	@Resource
	private CartMapper cartMapper;
	/**
	 * 添加商品数据
	 */
	public void addCart(Cart cart) {
		
		List<Cart> listCart=cartMapper.getCartByUserid(cart.getUserid());
		for(Cart c:listCart){
			c.getUserid();
			c.getCount();
			c.getGoodsid();
			c.getId();
			if(cart.getGoodsid().equals(c.getGoodsid())){
				Integer quantity=cart.getCount()+c.getCount();
				cart.setCount(quantity);
				cartMapper.update(cart);
				return ;
			}
		}
		cartMapper.insert(cart);
	}
	
	//通过id修改商品的数量
	public void updateById(Integer userid, Integer count) {
		cartMapper.updateById(userid, count);
	}
//	public void addCount(Integer userid,Integer num,Integer cartid){
//		List<Cart> listCart=cartMapper.getCartByUserid(userid);
//		for(Cart c:listCart){
//				c.getUserid();
//				c.getCount();
//				c.getGoodsid();
//				c.getId();
//				if(c.getId().equals(cartid)){
//					Integer count=c.getCount()+num;
//					c.setCount(count);
//					cartMapper.update(c);
//				}
//			}
//		}
//	public void subtractCount(Integer userid,Integer num,Integer cartid){
//		List<Cart> listCart=cartMapper.getCartByUserid(userid);
//		for(Cart c:listCart){
//				c.getUserid();
//				c.getCount();
//				c.getGoodsid();
//				c.getId();
//				if(c.getId().equals(cartid)){
//					Integer count=c.getCount()+num;
//					c.setCount(count);
//					cartMapper.update(c);
//				}
//			}
//		}

	//通过userid查询当前用户的购物车的商品信息
	public List<CartVo> getAll(Integer userid) {
		
		return cartMapper.selectAll(userid);
	}

	//通过商品id删除t_cart表中的商品记录
	public void deleteByCartId(Integer id) {
		cartMapper.deleteByCartId(id);
	}
	//删除多个商品
	public void deleteByBatch(Integer[] ids) {
		cartMapper.deleteByBatch(ids);
	}
	//返回购买商品的集合
	public List<CartVo> getOrderByUserid(Integer userid, Integer[] ids) {
		//选中商品的集合
		List<CartVo> newList=new ArrayList<CartVo>();
		//返回购物车的所有商品信息
		List<CartVo> list=cartMapper.selectAll(userid);
		for(CartVo cart:list){
			for(Integer id:ids){
				if(cart.getId()==id){
					newList.add(cart);
					break;
				}
			}
				
		}
		return newList;
	}

	
	
}